The Abacus
A helpful YouTube tutorial for the aspiring abacist link here.
Controls
W / S - Change focus Up / Down
A / D - Decrement / Increment the Focused Rung
Space - Reset current rung
1 - 9 - Increase the buffered value
Enter - Set the abacus to the buffered value
Up / Down Arrows (+ Shift) - Zoom in / out (+ faster)
Left / Right Arrows (+ Shift) - Rotate the Abacus (+ faster)
R - Reset the Scene
Brief History
The abacus is one of many types of counting devices which are used to count large numbers and it is one of the earliest portable counting devices. It is an example of ancient technology and originates from a time when there were no written number systems. In the modern times, the abacus is still used in some countries by merchants and clerks. It is also used as a visual aid for blind children when their peers would be learning their numbers with pencil and paper.
For Those Interested
The abacus you see here is decimal based (meaning power of 10 number system) but you could make your own to represent any number system (i.e. binary, octal, hexadecimal, etc.). There are a variety of basic kinds of abacus but the most popular kind of abacus is probably the Japanese Soroban given its compact size (not shown here).
Assignment Parameters
Theme - Ancient Technology (although the abacus has survived use into the modern age).
Keyframe Animation - The "minimum" animation frames describing the use of an abacus is when the beads are on the left or right side of the abacus. The in-between frames are determined by linear interpolation of the keyframes (basically).
Scenegraph - Each bead is in its rung's world space, each rung is in the abacus' world space. The Scenegraph class is managing the meshes and rendering configs.
FSM (Finite State Machine) - The following is an snippet of the FSM describing the key event listener.
A helpful YouTube tutorial for the aspiring abacist link here.
Controls
W / S - Change focus Up / Down
A / D - Decrement / Increment the Focused Rung
Space - Reset current rung
1 - 9 - Increase the buffered value
Enter - Set the abacus to the buffered value
Up / Down Arrows (+ Shift) - Zoom in / out (+ faster)
Left / Right Arrows (+ Shift) - Rotate the Abacus (+ faster)
R - Reset the Scene
Brief History
The abacus is one of many types of counting devices which are used to count large numbers and it is one of the earliest portable counting devices. It is an example of ancient technology and originates from a time when there were no written number systems. In the modern times, the abacus is still used in some countries by merchants and clerks. It is also used as a visual aid for blind children when their peers would be learning their numbers with pencil and paper.
For Those Interested
The abacus you see here is decimal based (meaning power of 10 number system) but you could make your own to represent any number system (i.e. binary, octal, hexadecimal, etc.). There are a variety of basic kinds of abacus but the most popular kind of abacus is probably the Japanese Soroban given its compact size (not shown here).
Assignment Parameters
Theme - Ancient Technology (although the abacus has survived use into the modern age).
Keyframe Animation - The "minimum" animation frames describing the use of an abacus is when the beads are on the left or right side of the abacus. The in-between frames are determined by linear interpolation of the keyframes (basically).
Scenegraph - Each bead is in its rung's world space, each rung is in the abacus' world space. The Scenegraph class is managing the meshes and rendering configs.
FSM (Finite State Machine) - The following is an snippet of the FSM describing the key event listener.
